Walkabout—A Retargetable Dynamic Binary Translation Framework
نویسندگان
چکیده
Dynamic compilation techniques have found a renaissance in recent years due to their use in high-performance implementations of the JavaTM language. Techniques originally developed for use in virtual machines for such object-oriented languages as Smalltalk are now commonly used in Java virtual machines (JVMTM) and Java just-intime compilers. These techniques have also been applied to binary translation in recent years, most commonly appearing in binary optimizers for a given platform that improve the performance of binary programs while they execute. The Walkabout project investigates and develops dynamic binary translation techniques that are based on properties of retargetability, ease of experimentation, separation of machine-dependent from machine-independent concerns, and good debugging support. Walkabout is a framework for experimenting with dynamic binary translation ideas, as well as techniques in related areas such as interpreters, instrumentation tools, and optimization. In this report, we present the design of the Walkabout framework and its initial implementation. Tools generated from this initial framework include disassemblers, machine code interpreters (emulators), and binary rewriting tools for the SPARC® and x86 architectures. email address: [email protected] [email protected] [email protected] © 2002 Sun Microsystems, Inc. All rights reserved. The SML Technical Report Series is published by Sun Microsystems Laboratories, of Sun Microsystems, Inc. Printed in U.S.A. Unlimited copying without fee is permitted provided that the copies are not made nor distributed for direct commercial advantage, and credit to the source is given. Otherwise, no part of this work covered by copyright hereon may be reproduced in any form or by any means graphic, electronic, or mechanical, including photocopying, recording, taping, or storage in an information retrieval system, without the prior written permission of the copyright owner. TRADEMARKS Sun, Sun Microsystems, the Sun logo, Solaris, Java, JVM, and Java HotSpot are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. in the U.S. and other countries. Products bearing SPARC trademarks are based upon an architecture developed by Sun Microsystems, Inc. UNIX is a registered trademark in the United States and other countries, exclusively licensed through X/Open Company, Ltd. For information regarding the SML Technical Report Series, contact Jeanie Treichel, Editor-in-Chief .All technical reports are available online on our Website, http://research.sun.com/techrep/. Walkabout – A Retargetable Dynamic Binary Translation Framework Cristina Cifuentes Sun Microsystems Laboratories Palo Alto, CA 94303, USA [email protected] Brian Lewis Sun Microsystems Laboratories Palo Alto, CA 94303, USA [email protected] David Ung Sun Microsystems Laboratories Palo Alto, CA 94303, USA [email protected]
منابع مشابه
Specification-Driven Dynamic Binary Translation
Machine emulation allows for the simulation of a real or virtual machine, the source machine, on various host computers. A machine emulator interprets programs that are compiled for the emulated machine, but normally at a much reduced speed. Therefore, in order to increase the execution speed of such interpreted programs, a machine emulator may apply different dynamic optimization techniques. I...
متن کاملBinary Translation: Static, Dynamic, Retargetable?
Cristina Cifuentes Department of Computer Science The University of Queensland Brisbane Qld 4072, Australia [email protected] Vishv Malhotra Department of Computer Science University of Tasmania Hobart Tas 7001, Australia [email protected] Abstract The porting of software to newer and faster machines using static binary translation techniques has proved successful to a large extent. Curren...
متن کاملA General Persistent Code Caching Framework for Dynamic Binary Translation (DBT)
Dynamic binary translation (DBT) translates binary code from one instruction set architecture (ISA) to another (same or different) ISA at runtime, which makes it very useful in many applications such as system virtualization, whole program analysis, system debugging, and system security. Many techniques have been proposed to improve the efficiency of DBT systems for long-running and loop-intens...
متن کاملSRL – A Simple Retargetable Loader
A loader is a systems program used by an operating system (OS) to load a binary executable file onto memory to execute it. The internal format of a binary executable file is called the binary-file format (BFF); this format is dependent on the OS and the particular computer architecture it runs on. Traditionally, when developing machine-code manipulation tools such as binary translators and disa...
متن کاملSpecifying the Semantics of Machine Instructions
Computer architecture manuals describe the instruction set of the machine and the semantics of those instructions by a combination of natural language and ISP (Instruction Set Processor) descriptions. The syntax of the instructions in assembly is well deened in the form of tables in the manual. However, the semantics is not so well speciied and descriptions vary widely from one manual to anothe...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1992